package com.zjl.paike2.service;

import com.zjl.paike2.entity.StudentInfo;
import com.zjl.paike2.vo.PageResult;

import java.util.List;

/**
 * 学生信息Service接口
 */
public interface StudentInfoService {
    
    /**
     * 查询所有学生列表（不分页）
     * @return 学生列表
     */
    List<StudentInfo> getAllStudents();
    
    /**
     * 分页条件查询学生列表
     * @param stuName 学生姓名（模糊查询）
     * @param stuId 学号（模糊查询）
     * @param classId 班级编号（精确查询）
     * @param pageNum 页码
     * @param pageSize 每页记录数
     * @return 分页结果
     */
    PageResult<StudentInfo> getStudentsByCondition(String stuName, String stuId, String classId, int pageNum, int pageSize);
    
    /**
     * 根据学号查询学生信息
     * @param stuId 学号
     * @return 学生信息
     */
    StudentInfo getStudentById(String stuId);
    
    /**
     * 添加学生信息
     * @param studentInfo 学生信息
     * @return 是否成功
     */
    boolean addStudent(StudentInfo studentInfo);
    
    /**
     * 修改学生信息
     * @param stuId 学号
     * @param studentInfo 学生信息
     * @return 是否成功
     */
    boolean updateStudent(String stuId, StudentInfo studentInfo);
    
    /**
     * 删除学生信息
     * @param stuId 学号
     * @return 是否成功
     */
    boolean deleteStudent(String stuId);
} 